Flash memory is an improved form of Electrically-Erasable Programmable Read-Only Memory (EEPROM). Traditional EEPROM devices are only capable of erasing or writing one memory location at a time. In contrast, flash memory allows multiple memory locations to be erased or written in one programming operation. Flash memory can thus operate at higher effective speeds than traditional EEPROM.
Flash memory enjoys a number of advantages over other storage devices. It generally offers faster read access times and better shock resistance than a hard disk drive (HDD). Unlike dynamic random access memory (DRAM), flash memory is non-volatile, meaning that data stored in a flash storage device is not lost when power to the device is removed. For this reason, a flash memory device is frequently referred to as a flash storage device, to differentiate it from volatile forms of memory. These advantages, and others, may explain the increasing popularity of flash memory for storage applications in devices such as memory cards, USB flash drives, mobile phones, digital cameras, mass storage devices, MP3 players and the like.
In addition to non-volatile flash memory, many flash storage devices include a controller and volatile memory, such as DRAM, which are used in the management of the read and write operations of the flash storage devices and in the communication between the flash storage devices and the host devices to which they are connected. For example, DRAM may contain an addressing table correlating logical addresses used by the host device with physical addresses in the non-volatile flash memory where data is stored. Because many flash storage devices are dependent upon a host device to which they are connected for power, the sudden and unexpected loss of power (e.g., due to the flash storage device being unplugged from the host) is a regrettably common circumstance. When this occurs, the information stored in the volatile memory of a flash storage device may be lost, which can result in data corruption or an undue delay in recreating the addressing table upon the restoration of power. To address this problem, many flash storage devices include mechanisms for providing enough emergency power to provide time for the addressing table(s) to be copied to the non-volatile flash memory. These mechanisms, such as super-capacitors, batteries and the like, may dramatically increase the cost and complexity of the flash storage devices that employ them, and should they eventually wear out or otherwise fail, an unintended power interruption may result in data loss or necessitate rebuilding addressing tables from scratch.